Advanced industrial safety notification systems

ABSTRACT

An industrial visualization system defines and enforces a virtual safety shield comprising a three-dimensional space surrounding a wearer of a client device. The dimensions of the virtual safety shield are defined by a specified safe distance surrounding the user that allows sufficient reaction time in response to notification that the wearer is at risk of interacting with a safety zone, hazardous machinery, or vehicles within the plant. If a boundary of a safety zone or hazardous equipment falls within the three-dimensional space defined by the virtual safety shield, the system sends a notification to the user&#39;s client device, or places the hazardous equipment in a safe operating mode.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Application Ser.No. 62/666,068, filed on May 2, 2018, entitled “AUGMENTED REALITY SAFETYSHIELD,” and U.S. Provisional Application Ser. No. 62/666,240, filed onMay 3, 2018, entitled “ADVANCED INDUSTRIAL SAFETY NOTIFICATION SYSTEMS.”The entireties of these related applications are incorporated herein byreference.

BACKGROUND

The subject matter disclosed herein relates generally to industrialautomation systems, and, more particularly, to visualization ofindustrial data and notification of potential hazard situations

BRIEF DESCRIPTION

The following presents a simplified summary in order to provide a basicunderstanding of some aspects described herein. This summary is not anextensive overview nor is intended to identify key/critical elements orto delineate the scope of the various aspects described herein. Its solepurpose is to present some concepts in a simplified form as a prelude tothe more detailed description that is presented later.

In one or more embodiments, a system is provided, comprising a localscanner component configured to perform a scan of a vicinity surroundingthe system and to generate, based on the scan, mapping data representingobjects and surfaces within the vicinity; and a local safety shieldcomponent configured to define a three-dimensional virtual safety shieldaround the local scanner based on a defined minimum safe distance,identify, based on a result of an analysis performed on the mappingdata, an obstacle within the vicinity surrounding the system, and inresponse to determining that the virtual safety shield overlaps with theobstacle, generate a notification.

Also, one or more embodiments provide a method, scanning, by a systemcomprising a processor, a space surrounding the system; generating, bythe system based on the scanning, mapping data that models objects andsurfaces within the space surrounding the system; defining, by thesystem, a three-dimensional virtual safety shield around the systembased on a defined minimum safe distance; identifying, by the systembased on a result of an analysis performed on the mapping data, anobstacle within the space surrounding the system; and in response todetermining that the virtual safety shield overlaps with the obstacle,generating, by the system, a notification.

Also, according to one or more embodiments, a non-transitorycomputer-readable medium is provided having stored thereon instructionsthat, in response to execution, cause a wearable device to performoperations, the operations comprising scanning a vicinity surroundingthe wearable device; generating, based on the scanning, mapping datathat describes objects and surfaces within the vicinity; defining athree-dimensional virtual safety shield around the wearable device basedon a defined minimum safe distance; identifying, based on a result of ananalysis performed on the mapping data, an obstacle within the spacesurrounding the wearable device; and in response to determining that thevirtual safety shield overlaps with the obstacle, generating anotification.

To the accomplishment of the foregoing and related ends, certainillustrative aspects are described herein in connection with thefollowing description and the annexed drawings. These aspects areindicative of various ways which can be practiced, all of which areintended to be covered herein. Other advantages and novel features maybecome apparent from the following detailed description when consideredin conjunction with the drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example industrial control environment.

FIG. 2 is a conceptual diagram illustrating presentation of augmented orvirtual reality presentations to a wearable appliance or computingdevice worn by a user.

FIG. 3 is a block diagram of an example virtual and augmented realitypresentation system.

FIG. 4 is a block diagram of an example wearable appliance.

FIG. 5 is a block diagram of a generalized example architectureincluding an AR/MR/VR presentation system that serves as a contentprovide for augmented and virtual reality presentations of an industrialfacility.

FIG. 6 is a block diagram illustrating components of the AR/MR/VRpresentation system in more detail.

FIG. 7 is a diagram illustrating data inputs leveraged by AR/MR/VRpresentation system to generate AR/MR/VR presentations and to issuevirtual safety shield notifications an associated control commands

FIG. 8A is a diagram illustrating an implementation for preventingnuisance trips of an industrial safety system caused by a personentering a safety zone of an industrial facility.

FIG. 8B is a diagram illustrating another implementation for preventingnuisance trips of an industrial safety system caused by a personentering a safety zone of an industrial facility.

FIG. 9 is a diagram illustrating an example tiered virtual safetyshield.

FIG. 10 is a diagram illustrating detection and notification of anobstacle using local scanning techniques.

FIG. 11 is a diagram illustrating detection of a machine using localscanning techniques and placement of the machine in a safe state.

FIG. 12 is a flowchart of an example methodology for delivering warningnotifications to a user at risk of tripping a safety system of anindustrial safety zone.

FIG. 13 is a flowchart of an example methodology for placing industrialmachinery in a safe operating mode in response to a detected proximityof a person.

FIG. 14 is a flowchart of an example methodology for dynamicallyadjusting a size of a virtual safety shield.

FIG. 15 is a flowchart of an example methodology for dynamically warninga user of potential collisions with objects or surfaces.

FIG. 16 is a flowchart of an example methodology for preventinghazardous interactions with industrial machinery.

FIG. 17 is an example computing environment.

FIG. 18 is an example networking environment.

DETAILED DESCRIPTION

The subject disclosure is now described with reference to the drawings,wherein like reference numerals are used to refer to like elementsthroughout. In the following description, for purposes of explanation,numerous specific details are set forth in order to provide a thoroughunderstanding thereof. It may be evident, however, that the subjectdisclosure can be practiced without these specific details. In otherinstances, well-known structures and devices are shown in block diagramform in order to facilitate a description thereof.

As used in this application, the terms “component,” “system,”“platform,” “layer,” “controller,” “terminal,” “station,” “node,”“interface” are intended to refer to a computer-related entity or anentity related to, or that is part of, an operational apparatus with oneor more specific functionalities, wherein such entities can be eitherhardware, a combination of hardware and software, software, or softwarein execution. For example, a component can be, but is not limited tobeing, a process running on a processor, a processor, a hard disk drive,multiple storage drives (of optical or magnetic storage medium)including affixed (e.g., screwed or bolted) or removable affixedsolid-state storage drives; an object; an executable; a thread ofexecution; a computer-executable program, and/or a computer. By way ofillustration, both an application running on a server and the server canbe a component. One or more components can reside within a processand/or thread of execution, and a component can be localized on onecomputer and/or distributed between two or more computers. Also,components as described herein can execute from various computerreadable storage media having various data structures stored thereon.The components may communicate via local and/or remote processes such asin accordance with a signal having one or more data packets (e.g., datafrom one component interacting with another component in a local system,distributed system, and/or across a network such as the Internet withother systems via the signal). As another example, a component can be anapparatus with specific functionality provided by mechanical partsoperated by electric or electronic circuitry which is operated by asoftware or a firmware application executed by a processor, wherein theprocessor can be internal or external to the apparatus and executes atleast a part of the software or firmware application. As yet anotherexample, a component can be an apparatus that provides specificfunctionality through electronic components without mechanical parts,the electronic components can include a processor therein to executesoftware or firmware that provides at least in part the functionality ofthe electronic components. As further yet another example, interface(s)can include input/output (I/O) components as well as associatedprocessor, application, or Application Programming Interface (API)components. While the foregoing examples are directed to aspects of acomponent, the exemplified aspects or features also apply to a system,platform, interface, layer, controller, terminal, and the like.

As used herein, the terms “to infer” and “inference” refer generally tothe process of reasoning about or inferring states of the system,environment, and/or user from a set of observations as captured viaevents and/or data. Inference can be employed to identify a specificcontext or action, or can generate a probability distribution overstates, for example. The inference can be probabilistic—that is, thecomputation of a probability distribution over states of interest basedon a consideration of data and events. Inference can also refer totechniques employed for composing higher-level events from a set ofevents and/or data. Such inference results in the construction of newevents or actions from a set of observed events and/or stored eventdata, whether or not the events are correlated in close temporalproximity, and whether the events and data come from one or severalevent and data sources.

In addition, the term “or” is intended to mean an inclusive “or” ratherthan an exclusive “or.” That is, unless specified otherwise, or clearfrom the context, the phrase “X employs A or B” is intended to mean anyof the natural inclusive permutations. That is, the phrase “X employs Aor B” is satisfied by any of the following instances: X employs A; Xemploys B; or X employs both A and B. In addition, the articles “a” and“an” as used in this application and the appended claims shouldgenerally be construed to mean “one or more” unless specified otherwiseor clear from the context to be directed to a singular form.

Furthermore, the term “set” as employed herein excludes the empty set;e.g., the set with no elements therein. Thus, a “set” in the subjectdisclosure includes one or more elements or entities. As anillustration, a set of controllers includes one or more controllers; aset of data resources includes one or more data resources; etc.Likewise, the term “group” as utilized herein refers to a collection ofone or more entities; e.g., a group of nodes refers to one or morenodes.

Various aspects or features will be presented in terms of systems thatmay include a number of devices, components, modules, and the like. Itis to be understood and appreciated that the various systems may includeadditional devices, components, modules, etc. and/or may not include allof the devices, components, modules etc. discussed in connection withthe figures. A combination of these approaches also can be used.

Industrial controllers and their associated I/O devices are central tothe operation of modern automation systems. These controllers interactwith field devices on the plant floor to control automated processesrelating to such objectives as product manufacture, material handling,batch processing, supervisory control, and other such applications.Industrial controllers store and execute user-defined control programsto effect decision-making in connection with the controlled process.Such programs can include, but are not limited to, ladder logic,sequential function charts, function block diagrams, structured text, orother such platforms.

FIG. 1 is a block diagram of an example industrial control environment100. In this example, a number of industrial controllers 118 aredeployed throughout an industrial plant environment to monitor andcontrol respective industrial systems or processes relating to productmanufacture, machining, motion control, batch processing, materialhandling, or other such industrial functions. Industrial controllers 118typically execute respective control programs to facilitate monitoringand control of industrial devices 120 making up the controlledindustrial systems. One or more industrial controllers 118 may alsocomprise a soft controller executed on a personal computer or otherhardware platform, or a hybrid device that combines controllerfunctionality with other functions (e.g., visualization). The controlprograms executed by industrial controllers 118 can comprise anyconceivable type of code used to process input signals read from theindustrial devices 120 and to control output signals generated by theindustrial controllers, including but not limited to ladder logic,sequential function charts, function block diagrams, or structured text.

Industrial devices 120 may include both input devices that provide datarelating to the controlled industrial systems to the industrialcontrollers 118, and output devices that respond to control signalsgenerated by the industrial controllers 118 to control aspects of theindustrial systems. Example input devices can include telemetry devices(e.g., temperature sensors, flow meters, level sensors, pressuresensors, etc.), manual operator control devices (e.g., push buttons,selector switches, etc.), safety monitoring devices (e.g., safety mats,safety pull cords, light curtains, etc.), and other such devices. Outputdevices may include motor drives, pneumatic actuators, signalingdevices, robot control inputs, valves, and the like.

Industrial controllers 118 may communicatively interface with industrialdevices 120 over hardwired or networked connections. For example,industrial controllers 118 can be equipped with native hardwired inputsand outputs that communicate with the industrial devices 120 to effectcontrol of the devices. The native controller I/O can include digitalI/O that transmits and receives discrete voltage signals to and from thefield devices, or analog I/O that transmits and receives analog voltageor current signals to and from the devices. The controller I/O cancommunicate with a controller's processor over a backplane such that thedigital and analog signals can be read into and controlled by thecontrol programs. Industrial controllers 118 can also communicate withindustrial devices 120 over a network using, for example, acommunication module or an integrated networking port. Exemplarynetworks can include the Internet, intranets, Common Industrial Protocol(CIP), Ethernet, DeviceNet, ControlNet, Data Highway and Data HighwayPlus (DH/DH+), Remote I/O, Fieldbus, Modbus, Profibus, wirelessnetworks, serial protocols, and the like. The industrial controllers 118can also store persisted data values that can be referenced by thecontrol program and used for control decisions, including but notlimited to measured or calculated values representing operational statesof a controlled machine or process (e.g., tank levels, positions,alarms, etc.) or captured time series data that is collected duringoperation of the automation system (e.g., status information formultiple points in time, diagnostic occurrences, etc.).

Industrial automation systems often include one or more human-machineinterfaces (HMIs) 114 that allow plant personnel to view telemetry andstatus data associated with the automation systems, and to control someaspects of system operation. HMIs 114 may communicate with one or moreof the industrial controllers 118 over a plant network 116, and exchangedata with the industrial controllers to facilitate visualization ofinformation relating to the controlled industrial processes on one ormore pre-developed operator interface screens. HMIs 114 can also beconfigured to allow operators to submit data to specified data tags ormemory addresses of the industrial controllers 118, thereby providing ameans for operators to issue commands to the controlled systems (e.g.,cycle start commands, device actuation commands, etc.), to modifysetpoint values, etc. HMIs 114 can generate one or more display screensthrough which the operator interacts with the industrial controllers118, and thereby with the controlled processes and/or systems. Exampledisplay screens can visualize present states of industrial systems ortheir associated devices using graphical representations of theprocesses that display metered or calculated values, employ color orposition animations based on state, render alarm notifications, oremploy other such techniques for presenting relevant data to theoperator. Data presented in this manner is read from industrialcontrollers 118 by HMIs 114 and presented on one or more of the displayscreens according to display formats chosen by the HMI developer.

Typically, in order to view information relating to the industrialprocesses carried out by the machines and devices that make upindustrial control environment 100, users must either rely onpre-developed interface display screens executing on HMIs 114 (see user122), or directly connect to the devices using a portable computer inorder to view control programming and device configurations (see user124). While these data visualization systems allow a user to viewrelevant data values and alarms associated with the various machines anddevices, the localized nature of these systems requires the user to bephysically near an HMI terminal or industrial controller in order toview operational and status data for a given industrial system ormachine. Moreover, HMI displays and controller programming tools providelittle in the way of trouble-shooting guidance or analysis in the eventof a machine fault or other performance issue. Typically, the manner ofpresenting machine and device data via HMI screens or controllerprogramming tools requires the user to visually correlate the datapresented on the screens with the user's own direct view of the relevantmachines or devices.

When diagnosing problems, maintenance personnel are often required tosearch several of these sources of information individually, usingseveral different software packages specific to the respective datasources being searched. Moreover, searching for information pertainingto a particular device or machine often requires an extensive knowledgeof the overall industrial system in order to locate the data source tobe searched (e.g., in order to locate the appropriate industrialcontroller or HMI terminal), as well as to identify the relevantoperator screens and control program routines. Individually searchingeach of these data sources in connection with solving a system downtimeissue or other problem can delay correction of maintenance issues,resulting in lost revenue and scheduling problems. Also, if an operatoror maintenance person is not near an information source—such as an HMIterminal—at the time an operational or maintenance issue occurs, theuser may not be notified of the issue in a timely fashion.

The possibilities of applying augmented reality (AR), mixed reality(MR), and virtual reality (VR) technologies to industrial environmentsare being explored to address these and other issues. In an examplescenario, AR, MR, or VR presentations (referred to collectively hereinas AR/MR/VR presentations) can be generated and delivered to a user viaa wearable computer or other device. AR/MR/VR presentations generated bysuch system can comprise three-dimensional (3D) holographic views of aplant facility or a location within a plant facility (e.g., a work area,a production line, etc.). The holographic views may be delivered to awearable visualization computer, which renders the 3D view as a functionof the user's current location and/or orientation. Views of the factoryenvironment rendered by these presentations can include, for example,scaled down views of a factory floor area, which affords the user aninteractive external overview of the area, as well as plant-floor viewsthat render a realistic presentation of the factory floor area from thepoint of view of a person standing within the environment. In the caseof AR presentations, a wearable device can enhance a user's natural viewof a surrounding production area by superimposing operational and statusdata over the user's view on or near representations of the relevantindustrial devices or control panels. VR presentations may generate afully synthesized view of a production area that fully supersedes theuser's natural view.

For users that are physically located on the plant floor, the AR/MR/VRpresentation systems can provide automation system data, notifications,and proactive guidance to the user via modification of the user's viewof his or her immediate surroundings. Such modifications may include,for example, superimposing data values or indicators on a user's view ofa machine or automation system through the user's wearable computer (orother client device capable of rendering a substantially real-time viewof the machine or system). Industrial AR/MR/VR systems may alsocustomize presentation of this information based on the user's role,location, line of sight, type of wearable device, and/or othercontextual information.

In some example implementations, the AR/MR/VR presentation systems canobtain “real world” images of an industrial automation device having atleast one object via a wearable appliance having at least one imagesensory input. Such systems can complement the real-world images on theappliance with virtual or augmented reality images, data, and the likethat are associated with at least one identified object of theindustrial automation system. The physical industrial automation deviceor the at least one identified object can be displayed on the appliancetogether with an augmented/mixed/virtual attribute display of the realworld industrial automation device or the at least one object. ExampleAR/MR/VR presentations can include, but are not limited to, revisioninformation, topology information, controls, firmware, connections,problems, alarms, training, human machine interface, location ofcontroller/equipment, maps, manuals, instructions, line diagrams, ladderprograms, locations, avatars, filtered views, cameras, x-ray views,removable views, troubleshooting, how-to's, error proofing, safetyrobots, customer information, equipment information, filters, line ofsight filters, knowledge sharing portals, work flows, view/grab HMI's,line of sight (including distant line of sight), super power line ofsight, authentication, privilege control, and asset tracking.

FIG. 2 is a conceptual diagram illustrating presentation of AR/MR/VRpresentations 204 to a wearable appliance 206 or computing device wornby a user. The wearable appliance 206 can comprise any suitable wearableor portable computing device or appliance capable of rendering a virtualreality or augmented reality presentation that substantially surroundsthe user's field of view. In some embodiments, wearable appliance 206may be integrated into a hard hat, bump cap, or other type of protectivegear worn by the user. User interactions with the AR/MR/VR presentations204 can be facilitated by data exchange between a user's wearableappliance 206 and an AR/MR/VR presentation system that acts as a contentprovider. However, some embodiments of wearable appliance 206 can alsobe configured to establish direct communication channels with anindustrial device in order to send control instructions to such devices.To this end, one or more embodiments of wearable appliance 206 caninclude communication stacks that establish connectivity betweenindustrial systems residing on an industrial network—such as a commonindustrial protocol (CIP) network, a DeviceNet network, a ControlNetnetwork, an EthernetlP network, or other networks—and the wearableappliance 206. The wearable appliance 206 can comprise any suitablewearable or portable computing device or appliance capable of renderingan augmented reality, mixed reality, or virtual reality presentation.

In response to various conditions, such as the user's determined role,location, line of sight, or other information, the system can generateand deliver AR/MR/VR presentations to the user's wearable appliance 206.Data used to populate the presentations 204 can be obtained by thepresentation system from the relevant industrial devices and deliveredas part of the AR/MR/VR presentations 204. In some scenarios, wearableappliance 206 can also obtain at least a portion of the industrial datadirectly from the industrial devices via the industrial network byvirtue of a communication stack that interfaces the wearable appliance206 to the various devices on the network. Such devices can includeindividual devices such as controllers, human machine interface (HMI)devices, and motor drives, as well as collections of devices that arehoused in a control panel or that make up a controlled industrialmachine or system. The presentation system can customize thepresentations 204 based on a user's current context, line of sight, typeof client device being used by the user (e.g., wearable computer,handheld device, etc.), and/or other relevant information, such thatcustomized augmented reality or virtual reality presentations can begenerated based on relevant subsets of data available on the industrialnetwork.

In an example scenario, as a user is viewing an automation system,machine, or industrial device through a wearable computer (or as asubstantially real-time video image rendered on the user's clientdevice), the presentation system can monitor the wearable computer todetermine the user's location relative to the automation system, theuser's current line of sight or field of view, and/or other contextualinformation indicative of the user's relationship to the automationsystem. Based on the determined identity of the automation systemcurrently being viewed by the user, the AR/MR/VR presentation system candetermine current status information for devices and/or machines thatmake up the automation system, or for a process being carried out by theautomation system. The presentation system can then generate augmented,mixed, or virtual reality presentations and deliver these presentationsto the user's wearable appliance; e.g., as graphical or text-basedindicators overlaid on the user's field of view, such that eachindicator is positioned near the machine or device to which theindicator pertains. For example, if the user's current view encompassesa real or virtualized motor-driven conveyor and a motor drive thatcontrols the motor, the presentation system may superimpose a currentoperating status of the motor drive (e.g., a current speed, a faultcondition, an operating mode, etc.) near the image or view of the motordrive as perceived by the user. If the user is currently viewing adie-cast furnace, the presentation system may superimpose a currentfurnace temperature near the view of the furnace.

In yet another example, a monitoring component of the presentationsystem can identify a maintenance issue based on analysis ofsubstantially real-time system data generated by the automation system.In response to detecting such a maintenance issue, the presentationsystem can deliver a notification to a wearable appliance or otherclient device associated with a qualified plant technician. To assistthe selected user in locating the source of the detected problem, thepresentation system can superimpose graphics on the user's view of hisor her environment that guide the user to the source of the issue. Thesegraphics can include, for example, arrows or other indicators that guidethe user to the affected machine or device, as well as indicators thatdirect the user's focus of attention to specific areas or components ofan automation system, machine, or industrial device requiring attention.

When a user is viewing an AR, MR, or VR presentation rendered on awearable appliance 206, there is a tendency on the part of the user tofocus on virtual elements within the presentation while ignoringphysical objects within the user's surrounding environment.Consequently, the use of such systems poses considerable risks of injuryby distracting the user's attention from potential physical hazards inthe user's proximity. This is a particular concern when such AR/MR/VRsystems are used within inherently dangerous spaces such as industrialfacilities, which often include rotating equipment, trip hazards, mobileequipment and vehicles, electrical elements, chemical elements, andother hazards. This risk is further increased as a result of visualblind spots created by the wearable appliance itself, which can maskpotential hazards from the user's view. Without safety precautions, theuse of augmented, mixed, or virtual reality within an industrialenvironment can compound the traditional safety hazards already faced byfactory personnel.

To address these and other issues, one or more embodiments describedherein provide an AR/MR/VR system that supports definition andenforcement of a virtual “safety shield” around the wearer of anaugmented reality, mixed reality, or virtual reality wearable appliance(or another type of client device). In one or more embodiments, theAR/MR/VR system can leverage room mapping and motion trackingcapabilities of the AR/MR/VR equipment to identify and warn of potentialsafety concerns.

FIG. 3 is a block diagram of an example AR/MR/VR presentation system 302according to one or more embodiments of this disclosure. Aspects of thesystems, apparatuses, or processes explained in this disclosure canconstitute machine-executable components embodied within machine(s),e.g., embodied in one or more computer-readable mediums (or media)associated with one or more machines. Such components, when executed byone or more machines, e.g., computer(s), computing device(s), automationdevice(s), virtual machine(s), etc., can cause the machine(s) to performthe operations described.

AR/MR/VR presentation system 302 can include a client interfacecomponent 304, an authentication component 306, a rendering component308, a reporting component 310, a video processing component 312, adevice interface component 314, a monitoring component 316, a safetyshield component 318, one or more processors 320, and memory 322. Invarious embodiments, one or more of the client interface component 304,authentication component 306, rendering component 308, reportingcomponent 310, video processing component 312, device interfacecomponent 314, monitoring component 316, safety shield component 318,the one or more processors 320, and memory 322 can be electricallyand/or communicatively coupled to one another to perform one or more ofthe functions of the AR/MR/VR presentation system 302. In someembodiments, components 304, 306, 308, 310, 312, 314, 316, and 318 cancomprise software instructions stored on memory 322 and executed byprocessor(s) 320. AR/MR/VR presentation system 302 may also interactwith other hardware and/or software components not depicted in FIG. 3.For example, processor(s) 320 may interact with one or more externaluser interface devices, such as a keyboard, a mouse, a display monitor,a touchscreen, or other such interface devices.

Client interface component 304 can be configured to exchange informationbetween the AR/MR/VR presentation system 302 and a wearable appliance orother client device having authorization to access the system. Forexample, the client interface component 304 can receive contextualinformation about a user based on a monitoring of the user's wearableappliance or other client device, device or machine identity information(e.g., information obtained by the wearable appliance from optical codesassociated with the device or machine), requests from the wearableappliance to add or remove information from the presentation, commandsfrom the wearable appliance to transition the presentation to a livevideo feed sourced by a selected video camera, requests from thewearable appliance to invoke a virtual control panel or other virtual oraugmented reality presentation, etc. Client interface component 304 canalso deliver augmented reality, virtual reality, or mixed realitypresentations to the wearable appliance.

Authentication component 306 can be configured to confirm authorizationof a user to receive and interact with a virtual control panel or othervirtual or augmented reality presentation. For example, authenticationcomponent 306 can be configured to cross-reference user identificationinformation received from a wearable appliance with control privilegeinformation defined for the identified user. Authentication component306 may also determine a defined role associated with the useridentification information and grant a level of control privilegecommensurate with the user's role. Levels of control privilegecontrolled by authentication component 306 can include, for example,view-only privileges, full control privileges, limited controlprivileges whereby a selected subset of virtual control panel functionsmay be interfaced by the user, or other such access levels.

Rendering component 308 can be configured to retrieve a suitable virtualreality, mixed reality, or augmented reality presentation for renderingon a user's wearable appliance, and modify or enhance the presentationwith real-time or historical data retrieved from one or more industrialdevices, live or historical video feeds of the plant floor, or otherinformation. In the case of augmented reality presentations delivered tothe user's wearable appliance as the user traverses the plantenvironment, some embodiments of rendering component 308 can generatepresentations based on an identity of an industrial device, automationsystem, control cabinet, or machine received from the wearableappliance, such that available information about devices, machines, orcontrol cabinets within the user's line of sight is displayed on theappliance. The rendering component 308 can also select the AR/MR/VRpresentation in accordance with the user's control privileges(determined by the authentication component 306). The selectedpresentation can then be sent to the wearable appliance the clientinterface component 304.

Reporting component 310 can be configured to generate report data basedon computations performed on subsets of collected industrial data, andpresent the report data in a suitable format on an AR/MR/VR presentationvia the wearable appliance. For example, reporting component 310 can beconfigured to calculate operating statistics for a device, work cell,machine, or production area based on data collected from industrialdevices on the plant floor. The rendering component 308 can then renderthese statistics on an augmented, mixed, or virtual realitypresentation. Video processing component 312 can be configured toprocess and store video stream data from one or more cameras mounted onthe plant floor, such that the video data from each camera is taggedwith identification information indicating the location recorded by thevideo data. In some embodiments, rendering component 308 can, inresponse gesture or verbal input received from a user's wearableappliance, transition an AR/MR/VR presentation to a live or historicalvideo feed sourced by the stored video data.

Device interface component 314 can be configured to exchange informationbetween the AR/MR/VR presentation system 302 and one or more on-premiseindustrial devices (e.g., industrial controllers, telemetry devices,motor drives, quality check systems, industrial safety systems, etc.),cameras, or data collection devices (e.g., industrial data historians),located at one or more industrial plant facilities. In some embodiments,device interface component 314 can exchange data with the on-premisedevices via the plant networks on which the devices reside. In someembodiments, device interface component 314 can also receive some or allof the plant floor data via a public network such as the Internet. Thedevice interface component 314 can directly access the data generated bythese on-premise industrial devices and systems via the one or morepublic and/or private networks in some embodiments. Alternatively,device interface component 314 can access the data on these on-premisedevices via a proxy or gateway device that aggregates the data frommultiple industrial devices for migration to the cloud platform via thedevice interface component.

Monitoring component 316 can be configured to monitor selected subsetsof data collected by device interface component 314 according to definedmonitoring rules, and to deliver notifications and/or workflowrecommendations in response to detecting a maintenance or performanceissue based on a result of the monitoring. Monitoring component 316 canwork in conjunction with rendering component 308 to deliver suitablenotifications and workflows to wearable appliances associated withappropriate plant personnel, such that the workflows are presented aspart of an augmented reality presentation to guide personnel through theprocess of enacting an appropriate countermeasure to the detected issue.In addition to defining the conditions that define an issue requiringnotification, the monitoring rules can also define which employees areto be notified in response to each type of detected performance ormaintenance issue.

Safety shield component 318 can be configured to leverage spatialmapping data, environment mapping data, and/or motion tracking datagenerated by wearable appliance 206 to determine when a wearer ofappliance 206 is at risk of interfacing or interacting with a hazardousobject or area. Safety shield component 318 can be configured todetermine when a hazardous object is about to enter within a definedsafe distance from the user, and to send a notification to the wearableappliance 206 warning of the hazard in response to the determination.The defined safe distance in all directions from the user defines athree-dimensional space around the user referred to herein as a virtualsafety shield. In this way, safety shield component 318 can proactivelywarn personnel within the plant facility when they are about tophysically interact with a hazardous object (e.g., a machine, industrialequipment, a forklift, etc.), or is about to enter into a knownhazardous area. In some embodiments, safety shield component 318 canalso be configured to communicatively interface with industrialequipment (e.g., via device interface component 314), and to sendcontrol outputs to this equipment in response to determining that theequipment is within range of the user's virtual safety shield,indicating that the wearer of appliance 206 is about to dangerouslyinterface with this equipment.

The one or more processors 320 can perform one or more of the functionsdescribed herein with reference to the systems and/or methods disclosed.Memory 322 can be a computer-readable storage medium storingcomputer-executable instructions and/or information for performing thefunctions described herein with reference to the systems and/or methodsdisclosed.

FIG. 4 is a block diagram of an example wearable appliance 206 accordingto one or more embodiments of this disclosure. Wearable appliance 206can include a system interface component 404, a device communicationcomponent 406, a visualization component 408, a location and orientationcomponent 410, a local safety shield component 412, a local camera orscanner 414, one or more processors 420, and memory 422. In variousembodiments, one or more of the system interface component 404, devicecommunication component 406, visualization component 408, location andorientation component 410, local safety shield component 412, localcamera or scanner 414, the one or more processors 420, and memory 422can be electrically and/or communicatively coupled to one another toperform one or more of the functions of the wearable appliance 206. Insome embodiments, components 404, 406, 408, 410, 412, and 414 cancomprise software instructions stored on memory 422 and executed byprocessor(s) 420. Wearable appliance 206 may also interact with otherhardware and/or software components not depicted in FIG. 4. For example,processor(s) 420 may interact with one or more external user interfacedevices, such as a keyboard, a mouse, a display monitor, a touchscreen,or other such interface devices.

System interface component 404 can be configured to exchange data overwireless communication channels with AR/MR/VR presentation system 302.Device communication component 406 can be configured to exchange databetween the wearable appliance 206 and industrial devices via anindustrial network on which the devices reside. In an exampleimplementation for use with CIP networks, the device communicationcomponent 406 can support CIP protocol carried by EtherNet/IP. However,embodiments described herein are not limited to these protocols.

Visualization component 408 can be configured to render the virtualreality, augmented reality, mixed reality, or video presentationsdelivered to the wearable appliance 206 by AR/MR/VR presentation system302. Example augmented reality presentations can include graphicaloverlays that are superimposed over a user's field of view of his or hersurroundings via a wearable appliance. These graphical overlays caninclude, but are not limited to, operational or status data indicators(both alphanumerical and icon-based indicators) for an industrial systemor device within the user's field of view, indicators that direct a userto a location of an industrial system or device within a plantenvironment, guidance indicators for assisting a user in diagnosing andaddressing an identified problem with an industrial system or device, orother such overlays. Example AR/MR/VR presentations can include bothexternal scaled down views of a factory floor area as well asvirtualized first-person views of the plant floor. In some embodiments,visualization component 408 can also render, under the instruction ofAR/MR/VR presentation system 302, live or pre-recorded video feedsreceived from 360-degree cameras (or other types of video or audiocapture devices) mounted at selected areas of the plant floor.

Location and orientation component 410 can be configured to determine alocation and an orientation of the wearable appliance 206. Thisinformation can be sent to the AR/MR/VR presentation system 302 bysystem interface component 404 so that human operators can be trackedand rendered within a VR presentation, and so that the AR/MR/VRpresentation rendered by visualization component 408 reflects the user'scurrent location and/or orientation. This location and orientationinformation can also be used by the safety shield component 318 inconnection with identifying risks of interaction between the wearer ofappliance 206 and a hazardous object or piece of equipment.

Local safety shield component 412 can be configured to perform one ormore of the functions described above as being performed by safetyshield component 318. In this regard, safety shield functionality can beimplemented on one or both of the AR/MR/VR system 402 or the wearableappliance itself 206. In either case, the safety shield component 318 orlocal safety shield component 412 can determine potential intersectionsbetween the wearer of wearable appliance 206 and hazardous equipment orobjects based on one or more of the following: Location and orientationdata generated by the wearable appliance 206 (e.g., based on GPS data ortriangulation data), environment mapping data generated by the wearableappliance 202 (e.g., using a depth camera and CPU processing), andmotion tracking data (e.g., using an inertial measurement unit and CPUprocessing). In some embodiments, rather than using environment mapping,geofences can be used to determine virtual geographic boundaries. Localcamera or scanner 414 can be configured to collect information about thewearer's immediate surroundings that can be leveraged by local safetyshield component 414 to identify potential interactions between thewearer and hazardous equipment or objects. In various embodiments, localcamera or scanner 414 may be a time-of-flight camera or another type ofdepth camera, an RFID scanner, or another type of scanning componentcapable of collecting information about objects or surfaces within ascanning range of the wearer.

The one or more processors 420 can perform one or more of the functionsdescribed herein with reference to the systems and/or methods disclosed.Memory 422 can be a computer-readable storage medium storingcomputer-executable instructions and/or information for performing thefunctions described herein with reference to the systems and/or methodsdisclosed.

FIG. 5 is a block diagram of a generalized example architectureincluding a AR/MR/VR presentation system 302 that renders augmented andvirtual reality presentations of an industrial facility. The exampleindustrial environment depicted in FIG. 5 includes one or moreindustrial controllers 504, HMIs 506, motor drives 518, industrialsafety systems 520, databases 508 (e.g., data historians, employeedatabases, inventory databases, etc.), and device documentationrepositories 510. The industrial environment may also include othersources of industrial data not depicted in FIG. 5, including but notlimited to quality systems (e.g., vision systems or other qualifyverification systems), telemetry devices, presence sensors (e.g., photodetectors, optical scanners, proximity switches, etc.), video cameras,and other devices or sub-systems. In an example environment, theseindustrial devices and systems can reside on a plant (operationaltechnology, or OT) network 116. In some scenarios, the industrialdevices may be distributed across multiple plant networks 116 within theplant facility. The industrial environment may also include devices andsystems residing on an office (information technology, or IT) network108, including but not limited to manufacturing execution systems (MES)526, enterprise resource planning (ERP) systems 528, businessintelligence systems, business-level analytic systems, or other suchassets. One or both of office network 108 or plant network 116 may alsohave access to external networks 514 such as the Internet (e.g., viafirewall device 516).

AR/MR/VR presentation system 302—which can reside on plant network 116in the example architecture depicted in FIG. 5, but which may alsoreside on office network 108, on an external network, on a web server,or on a cloud platform as a cloud-based service provider—collects datafrom the diverse set of industrial devices via network 116. In someconfigurations, the presentation system 302 can also collect selecteditems of plant data from one or more devices or systems on officenetwork 108, including but not limited to the MES system 526, ERP system528, business intelligence systems, or other such assets. Presentationsystem 302 formats the data for rendering in virtual and augmentedreality presentations. One or more plant models 524 stored on thepresentation system 302 can define three-dimensional views of areaswithin an industrial facility (e.g., production lines or work areas),and presentation system 302 can generate three-dimensional virtual oraugmented reality presentations of the areas—including machines, controlcabinets, conveyors, industrial devices, etc.—based on the plant models524. The presentation system 302 can also superimpose selected subsetsof the collected industrial data on the virtual or augmented realitypresentations on or near graphical representations of the industrialasset (e.g., machine, control cabinet, industrial controller, etc.) towhich the data relates. Other interactive features of the virtual andaugmented reality presentations will be described in more detail herein.

The augmented, mixed, or augmented reality presentations can also becustomized in accordance with a defined role of the wearer of appliance206, as specified in user profiles 522 defined for each user of thesystem. Example user roles that can determine how AR, MR, or VR data ispresented to a user can include, but are not limited to, line operators,maintenance personnel, plant managers, plant engineers, or other roles.

Presentation system 302 can deliver these presentations to a wearableappliance 206 worn by a user, who may be at the plant facility or at aremote location relative to the facility. In the case of remote accessfrom outside the facility, presentation system 302 can be made securelyaccessible by authorized wearable appliances 206 via an outside networksuch as the Internet. In some embodiments, presentation system 302 canbe implemented on a web server, allowing wearable appliance 206 toinvoke AR/MR/VR presentations via an Internet connection. Thepresentation system 302 may also be implemented on a networked localserver accessible by the wearable appliance 206 via a wireless networkconnection. In yet another scenario, presentation system 302 may beimplemented on a cloud platform, where the search system executes as acloud-based service.

FIG. 6 is a block diagram illustrating components of the AR/MR/VRpresentation system 302 in more detail. AR/MR/VR presentation system 302includes a device interface component 314 that collects live andhistorical industrial data from industrial devices and systems 608distributed across an industrial environment. In some embodiments,device interface component 314 can be configured to retrieve selecteddata items from the industrial devices and systems 608 via networks 116or 108 in accordance with defined monitoring rules that specify the dataitems to be collected. The data items to be collected can be defined interms of data tag names that identify data tags on industrialcontrollers, HMIs, data historians, or other industrial devices; nameand location information for data files to be collected (e.g., workorder data files, device documentation files, inventory files, etc.), orother such data identifiers. The collected data items can includetelemetry and status information relating to operation of the devices ortheir associated industrial automation systems, as well as configurationinformation for the industrial devices (e.g., motor drive parameters,industrial controller communication settings, I/O modules installed oneach industrial controller, etc.). From the office network 108 orexternal networks 514, the collected data can include, but is notlimited to, work management information, production line schedulinginformation, operator work schedule information, product or materialinventory information, etc.

For some industrial devices, the device configuration or programdevelopment application used to configure and/or program the device canalso be used to define which data items on the device are to becollected by the AR/MR/VR presentation system 302. For example, theprogram development application used to define data tags on anindustrial controller—as well as to program the controller and configurethe controller's I/O and communication settings—can include an option toflag data tags defined on the controller for collection and rendering bythe AR/MR/VR presentation system 302. In such embodiments, the programdevelopment application may be integrated with a virtual/augmentedreality configuration tool, so that both the controller and aspects ofthe controller's AR/MR/VR visualization can be configured together usingthe same configuration tool. For example, for a given data tag definedon the industrial controller, the program development application canallow the user to set the tag to be a value that is to be collected bythe AR/MR/VR presentation system, as well as to define any associationsthe tag may have outside the scope of the controller (e.g., byidentifying any production areas, machines, industrial processes, orautomation systems the data tag is associated with). The user may alsodefine the visualization privileges associated with the tag via theprogram development application, which can be used by renderingcomponent 308 to determine which user roles are permitted to view dataassociated with the data tag. Based on such configuration information,rendering component 308 can render selected items of data defined on theindustrial controller (or other industrial devices) in association withthe virtualized production area, machines, processes, or systems withwhich the data tag has been assigned, and in accordance with the definedrole-based visualization privileges.

In some embodiments, the device interface component 314 can also beconfigured to discover data items residing on industrial devicesdistributed across the environment. In some embodiments, deviceinterface component 314 can discover available data items by deployingdiscovery agents on network 116 and/or 108. These agents—which can beprograms or bots—can traverse networks 116 and/or 108 and identifydevices in use throughout the plant, as well as the data items or tags,applications, and configuration information associated with thosedevices. Since a given industrial environment typically comprises aheterogeneous collection of devices of different types and vendors, andthe data made available by these devices may comprise many differentdata types (e.g., controller tags, HMI tags, alarms, notifications,events, etc.), some embodiments of device interface component 314 canmanage and deploy device-specific or platform-specific agents configuredto extract and analyze information from specific types of devices ordata platforms (e.g., controllers, HMIs, etc.). Some device-specificagents can be configured to locate application project files stored onparticular device types (e.g., configuration and/or program files on anindustrial controller, screen configuration files on an HMI, etc.), andextract relevant information about the devices based on analysis of datacontained in these project files. By leveraging device-specific andplatform-specific agents, embodiments of device interface component 314can discover and retrieve data conforming to many different formats andplatforms.

In order to unify this disparate heterogeneous data under a commonplatform for collective searching, device interface component 314 (orthe device-specific agents) can transform the collected data to a formatunderstandable by the rendering component 308 to yield normalized plantdata 610.

In some embodiments, device interface component 314 can also discoverand record relationships—both explicit and inferred—between data itemsdiscovered on the industrial devices and systems 608. In suchembodiments, the device interface component 314 may record theserelationships by tagging discovered data items with classification tagsand building a search index based on these classification tags, suchthat related data items share common tags. The classification tags mayidentify, for example, a common machine or automation system with whichthe devices are associated, a production area in which the devicesreside, a control cabinet identifier, or other such classification tags.In some scenarios, these classification tags may be explicitly definedby a system developer such that the device interface component 314determines which predefined tags should be applied to newly discovereddata items. The device interface component 314 may also auto-generateclassification tags for a given data item based on contextualinformation, including but not limited to rung comments associated witha controller tag, learned interdependencies between a newly discovereddata item and a previously discovered data item (e.g., learn that a pumpnamed Pump5 is associated with a tank named Tank1, and therefore tagPump5 as being associated with Tank1, or tag both Tank1 and Pump5according to the larger system in which they operate), or otherdiscovered contextual information. The device interface component 314can define associations between similarly tagged data items regardlessof the platform in which they were discovered. For example, the deviceinterface component 314 can associate common or related data itemsdiscovered, respectively, in an industrial controller, an HMI, a datahistorian, and ERP or MES system, a business intelligence system, etc.

Using some or all of these techniques, device interface component 314can discover and collect operational, status, and configuration datarelating to operation and health of industrial automation systems acrossa facility, as well as higher-level business data from devices on anoffice or IT network. This collected plant data 610 can be stored inmemory associated with the AR/MR/VR presentation system 302 (e.g.,memory 322) and used by rendering component 308 to populate virtual andaugmented reality presentations with live or historical data.

Although FIG. 6 depicts the components of presentation system 302 asresiding on a common system device, in some embodiments one or more ofthe components of the system 302 can reside on different physicaldevices.

Wearable appliance 206 can interface with AR/MR/VR presentation system302 via client interface component 304, which may comprise a wired orwireless network interface, a near-field communication interface, orother such device interface suitable for the particular platform onwhich the presentation system 302 is implemented. In some embodiments,client interface component 304 may be configured to verify anauthorization of the wearable appliance 206 to access the presentationsystem 302 prior to allowing AR/MR/VR presentations to be delivered tothe wearable appliance 206. Client interface component 304 mayauthenticate the wearable appliance 206 or its owner by verifying useridentification information 602 received from the appliance 206 usingpassword verification, biometric identification (e.g., retinal scaninformation collected from the user by the wearable appliance 206 andsubmitted to the client interface component 304), cross-referencing anidentifier of the wearable appliance 206 with a set of known authorizeddevices, or other such verification techniques.

Rendering component 308 is configured to generate virtual and augmentedreality presentation data 604 to wearable appliance 206 for delivery byclient interface component 304. Presentation data 604, when received andexecuted by wearable appliance 206, renders an interactivethree-dimensional virtual reality presentation of an industrial area onthe wearable appliance's display.

The location and orientation component 410 of wearable appliance 206 canbe configured to determine a current geographical location of theappliance 206. In some embodiments, location and orientation component410 can leverage global positioning system (GPS) technology to determinethe user's absolute location, or may be configured to exchange data withpositioning sensors located within the plant facility in order todetermine the user's relative location within the plant. Location andorientation component 410 can also include orientation sensingcomponents that measure the wearable appliance's current orientation interms of the direction of the appliance's line of sight, the angle ofthe appliance relative to horizontal, etc. Other types of sensors oralgorithms can be supported by embodiments of the wearable appliance 206for determining a wearer's current location and orientation, includingbut not limited to inertial measurement units (IMUs) or visual-inertialodometry (VIO). The wearable appliance's system interface component 404can report the location and orientation information generated bylocation and orientation component 410 to the AR/MR/VR presentationsystem 302 as location and orientation data 606.

Location and orientation data 606 is used by AR/MR/VR presentationsystem 302 to control the point of view of the AR/MR/VR presentation 604rendered on appliance by client interface component 304. For example, auser may be viewing an AR presentation of an industrial area via thewearable appliance 206. Rendering component 308 receives location andorientation data 606 generated by the user's wearable appliance, andrenders the presentation on the wearable appliance 206 in accordancewith the user's current location and orientation as indicated bylocation and orientation data 606. In particular, the direction andangle of the viewing perspective of the AR presentation is a function ofthe user's location and orientation.

Safety shield component 318 is configured to define and track a virtualsafety shield associated with a wearer of appliance 206 based on thelocation and orientation data 606, and to continuously compare thisvirtual safety shield definition with the plant models 524 and/or plantdata 610 to determine whether the wearer is at risk of accidentallyinitiating a nuisance trip of a safety system or dangerously interactingwith hazardous equipment. In response to determining that the user is atrisk of interfacing with a safety system or hazardous machinery, thesafety shield component 318 can instruct client interface component 304to issue a safety shield notification 612 to the wearer's appliance 206or another client device associated with the wearer. This virtual safetyshield functionality will be described in more detail below.

The AR/MR/VR presentation is generated based on a combination of diverseinformation received and processed by rendering component 308. FIG. 7 isa diagram illustrating data inputs leveraged by AR/MR/VR presentationsystem 302 to generate AR/MR/VR presentations. As noted above,presentation system 302 collects plant data 610 from industrial devices702 across the plant environment. Presentation system 302 also maintainsone or more plant models 524 that define a visual representation of thephysical layout of the area represented by an AR/MR/VR presentation. Forexample, a plant model for a given industrial area (e.g., a productionarea, a workcell, an assembly line, etc.) can define graphicalrepresentations of the industrial assets—including machines, conveyors,control cabinets, and/or industrial devices—located within that area, aswell as the physical relationships between these industrial assets. Foreach industrial asset, the plant model can define locations (e.g., interms of global coordinates or plant coordinates) and physicaldimensions and colors for the asset, as well as any animation supportedby the graphical representation (e.g., color change animations, positionanimations that reflect movement of the asset, etc.). The plant models524 also define the physical relationships between the industrialassets, including relative positions and orientations of the assets onthe plant floor, conduit or plumbing that runs between the assets, andother physical definitions.

A rendering engine supported by rendering component 308 is configured togenerate an interactive AR/MR/VR presentation of the industrial areabased on the industrial asset rendering definitions specified in theplant models. Rendering component 308 populates this AR/MR/VRpresentation with selected subsets of collected plant data 610 (as wellas production or operational statistics calculated by reportingcomponent 310 based on subsets of the plant data 610), and clientinterface component 304 delivers the resulting aggregate AR/MR/VRpresentation to wearable appliance 206 as AR/MR/VR presentation data604. Rendering component 308 can generate the presentation such thatitems of the plant data 610 are overlaid on or near graphicalrepresentations of the industrial assets to which the items of datarelate.

The virtual safety shield functionality described above can be used tomonitor a wearer of appliance 206 relative to a protected safety zone inorder to prevent nuisance trips of the zone's safety system withoutsacrificing operator safety. FIG. 8A is a diagram illustrating animplementation for preventing nuisance trips of an industrial safetysystem caused by a person 804 entering or passing a safety zone 802 ofan industrial facility. In an example scenario, a virtual safety zone802 may be defined around a hazardous industrial machine 808 or otherdangerous equipment surrounded by protective guarding to preventpersonnel from entering the dangerous area while the machine 808 isoperating. In some cases, perimeter guarding is erected around themachine 808, and an associated industrial safety system—comprising asafety relay or controller and associated safety input devices (e.g.,safety mats, light curtains, three-dimensional optical safety sensors,etc.)—monitors entry into the hazardous area. The safety system causesthe protected machine 808 to enter a safe state—e.g., a de-energizedstate, or a stopped or slow running mode—when a safety input device istripped, which indicates the presence of a person entering the protectedarea. The virtual safety zone 802 can be a three-dimensional volumedefined to encompass both the machine 808 and its associated safetysystem. In other scenarios, no protective guarding is used, and insteadthe safety zone 802 is defined and enforced solely by optical safetysensors—e.g., three-dimensional optical safety sensors, laser scanners,geo-fences, etc.—that monitor the area surrounding the machine 808. Suchoptical safety sensors can be configured to enforce defined boundariesof the safety zone 802 by monitoring the space surrounding the hazardousmachine 808 and placing the machine 808 in a safe state (e.g., ade-energized, stopped, or slow running mode) in response to detectingthat a person has moved within the defined boundaries of the safety zone802.

Accidental tripping of safety input devices (or accidental momentarycrossing of monitored safe boundaries in the case of optically monitoredsafety zones) by a person who is not attempting to enter the hazardousarea surrounding the machine 808 can result in nuisance stops of theprotected equipment, necessitating a restart of the equipment. This canimpact productivity by increasing total machine downtime and diminishthe trust and effectiveness of the safety system.

To address this issue, the AR/MR/VR presentation system 302, or thewearable appliance acting independently of the AR/MR/VR presentationsystem 302, can be configured to deliver a warning—in the form of asafety shield notification 612—to the person 804 in response todetermining that the person 804 is at risk of entering a protectedhazardous area and tripping a safety input device (e.g., a lightcurtain, a safety mat, a geo-fence system, an optical safety scanner,etc.). To this end, safety shield component 318 (or local safety shieldcomponent 412) can define and enforce a safe distance from the person804, referred to as a virtual safety shield 806. This safe distance isdefined in all directions relative to the current location of the user'swearable appliance 206, yielding a three-dimensional virtual safetyshield 806 that surrounds person 804 and tracks with the wearer'schanging location as the wearer moves throughout the plant. Although theexample illustrated in FIG. 8A depicts a spherical virtual safety shield806 in which the safe distance is equal in all directions, someembodiments of safety shield component 318 can allow virtual safetyshields of irregular three-dimensional shapes to be defined (e.g.,regular geometric volumes or irregular three-dimensional shapes).

In some embodiments, a virtual three-dimensional safety zone 802 canalso be defined around the hazardous area. As will be discussed in moredetail below, safety zone 802 can be established as a static safety zone(e.g., using geo-fences or point cloud capture, or as athree-dimensional volume defined in the plant models 524), or may bedynamically generated by the wearable appliance 206 based on informationabout the wearer's surroundings obtained by local camera or scanner 414.

In an example embodiment, AR/MR/VR presentation system 302 and/orwearable appliance 206 can use the defined virtual safety shield 806 tomake the determination as to whether the person 804 is at risk ofinteracting with the safety zone 802. In various embodiments, thisdetermination can be made by the AR/MR/VR presentation system 302 bycomparing absolute coordinates of the virtual safety shield and thevirtual safety zone, or may be determined locally by the wearableappliance—independently of the AR/MR/VR presentation system 302—based onlocal scanning and processing. In an example embodiment in which theAR/MR/VR presentation system 302 monitors for intrusions, safety shieldcomponent 318 can monitor the location and orientation data 606 receivedfrom the user's wearable appliance 206, and continuously update thelocation of the virtual safety shield 806 relative to the wearer'scurrent location. In particular, safety shield component 318continuously defines the virtual safety shield 806 as a volume centeredon or otherwise surrounding the user's current location (as defined bylocation and orientation data 606) and bounded by the locus of pointsthat are the defined safe distance from the wearer's current location.Safety shield component 318 can continuously compare the location andspatial boundaries of the virtual safety shield 806 with the plantmodels 524, which define the locations and physical dimensions ofindustrial assets within the plant (including hazardous machine), aswell as defined safety zones 802 surrounding the hazardous area. Thedefined safety zones 802 may correspond to spaces monitored bygeo-fences, optical safety scanners, or other such safety monitoringdevices.

In response to determining, based on correlation between the locationand dimensions of the virtual safety shield 806 and the definedlocations and dimensions of the defined safety zones 802, that a portionof the space defined by the virtual safety shield 806 overlaps with aportion of the space defined by the safety zone 802, safety shieldcomponent 318 (or local safety shield component 412) infers that theperson 804 is about to enter (or pass near) the safety zone 802, andinitiates delivery of a safety shield notification 612 to the user'swearable appliance 206. Safety shield notification 612 can conform toany suitable format, including but not limited to a visual or audibleindication rendered on wearable appliance 206 (e.g., as part of anAR/MR/VR presentation), a signal that triggers a vibration component ofwearable appliance 206, or other such notification. Since the safetyshield notification 612 is triggered when the user is still separatedfrom the hazardous area (and any associated safety input devices) by adistance defined by the bounds of the virtual safety shield 806 and thevirtual safety zone 802, the notification 612 can provide advancedwarning to the wearer that he or she is about to enter the safety zone802 (e.g., that the user is about to enter a space monitored bygeo-fences or an optical safety scanner), affording the wearer anopportunity to alter his or her path to avoid the safety zone 802 andmitigate possible accidental tripping of a safety input device. If theperson 804 continues toward the safety zone 802 notwithstanding thewarning, the safety system associated with the hazardous machine 808within the safety zone 802 will detect the person 804 and place theprotected equipment in its safe state.

In some such embodiments, the warning system can implement anintermediate step after the warning is issued to place the machine 808located within the safety zone 802 into an intermediately safe state(e.g., a reduced speed mode) if the person 804 continues moving towardthe safety zone 802 after the initial warning is issued but before asafety input device is tripped. If the person 804 continues movingtoward the safety zone 802 and trips a safety input device, themachinery will be placed in a fully safe state (e.g., a stopped mode ora deenergized state). In an example implementation, the safety shieldcomponent 318 may define two different safe distances, resulting in atiered virtual safety shield 806. FIG. 9 is a diagram illustrating anexample tiered virtual safety shield 806. In this example, two safedistances—a longer distance d1 and a shorter distance d2—are defined bythe safety shield component 318, resulting in a virtual safety shield806 comprising two concentric spheres. If the safety shield component318 determines that a boundary of the safety zone 802 is within thefirst distance d1 relative to the wearer but outside the second distanced2, the system 302 issues a notification 612 to the client's wearableappliance 206 or other client device. If the safety zone boundary iswithin the second distance d2—a distance smaller than the first distanced1 but which still places the user some distance away from the safetyzone 802—the system 302 may place the machine 808 in a slow operatingstate or another less dangerous operating mode. Any number of safetyshield tiers may be defined in this manner without departing from thescope of one or more embodiments of this disclosure.

In some embodiments, safety shield component 318 can be configured todynamically alter the size of the virtual safety shield 806 based on themeasured velocity or acceleration of the person's travel. For example,if the user's velocity (as determined by the rate of change of thelocation and orientation data 606) is within a range corresponding towalking velocity, safety shield component 318 can set the safe distanceof the virtual safety shield 806 to be a first distance. If the user'svelocity is determined to increase to a range corresponding to a runningvelocity, safety shield component 318 can increase the safe distance ofthe virtual safety shield 806, thereby increasing the volume of thevirtual safety shield 806. In this way, when the user is traveling atfaster speeds, safety shield notifications 612 are delivered to thewearable appliance 206 when the user is at a farther distance from thesafety zone 802, thereby allowing for longer reaction distancesassociated with faster velocities. In some embodiments, the dynamicchanges in size of the virtual safety shield 806 can also be based onthe user's acceleration or trajectory.

In scenarios in which hazardous machinery (either stationary or mobile)is not protected by physical guarding or a safety zone 802, the virtualsafety shield approach can also be used to send control commands 704(see FIG. 7) to one or more industrial devices 702 to place themachinery in a safe state in response to determining that a person'svirtual safety shield 806 overlaps with the hazardous machinery,indicating that the user is at risk of dangerously interacting with themachine. As in examples described above, safety shield component 318continuously compares the user's location and orientation data 606 withthe plant models 524 to determine whether known boundaries of adangerous machine (as recorded in the plant models 524) overlap with anyportion of person's virtual safety shield 806. That is, the safetyshield component 318 determines whether a boundary of the dangerousmachine falls within the defined safe distance from the person 804,where the safe distance is the defined boundary of the virtual safetyshield 806. In response to determining that a portion of the hazardousmachine intrudes within the boundary of the virtual safety shield 806,safety shield component 318 can instruct device interface component 314to send a control command 714 to an industrial device 702 (e.g., anindustrial controller, a robot controller, a motor drive, etc.) thatcontrols the hazardous machine to place the machine in a safe state(e.g., a slow operating mode, a stopped mode, and idle mode, etc.). Insome implementations, the control command 714 may be an instruction toopen a power relay to disconnect power from the machine, therebyde-energizing the machine before the wearer of appliance 206 dangerouslyinterfaces with the machine.

As noted above, as an alternative to virtual safety shields 806 that aredefined and tracked remotely by AR/MR/VR presentation system 302, someembodiments may implement the virtual safety shield 806 locally usinglocal area scanning. For example, an area scanner or beacon usingtechnology such as time-of-flight detection or another scanningtechnology can be carried by the person 804 and used to identify whenthe person 804 is about to enter the safety zone 802. In an exampleimplementation, an area scanner 810 can be carried by the person 804,creating a virtual safety shield 806 comprising a scanned area aroundthe person 804 that encompasses a calibrated three-dimensional rangefrom the person's current location. This locally scanned virtual safetyshield 806 may also be created by the local camera or scanner 414incorporated in the wearable appliance 206 or area scanner 810 worn bythe user in some embodiments. Area scanner 810 may comprise componentssimilar to those described above in connection with FIG. 4 for thewearable appliance, but may omit the system interference component 404since the area scanner 810 operates independently of the AR/MR/VRpresentation system 302. Area scanner 810 may also omit thevisualization component 408 for embodiments in which notifications arenot delivered visually.

As the person 804 approaches the safety zone 802, if the scanning device(the area scanner 810 or the local camera or scanner 414) determinesthat the scanned area of the virtual safety shield 806 overlaps with thesafety zone 802 (that is, a portion of the safety zone 802 is detectedwithin the virtual safety shield 806), the area scanner 810, wearableappliance 206, or an associated notification system can generate awarning indicating that the person 804 is about to enter a safety zone802. The detection range of the area scanner 810 or local camera/scanner414 is such that the person 804 will be notified before any of themachine's safety input devices are tripped. In response to the issuedwarning, the person 804 may choose to deviate from his or her currenttrajectory toward the safety zone 802, mitigating a potential nuisancetrip of a safety input device. These embodiments—whereby the virtualsafety shield 806 is generated and monitored locally by a scanner,wearable appliance, or safety equipment carried by the user—candynamically monitor for potential hazardous interactions with a safetyzone 802 without the need to reference a defined plant model 524.

In various embodiments, the area scanner 810 can be embodied inside oron safety equipment worn by the user, such as a hard hat, a bump cap,safety glasses, safety gloves, arc flash protective clothing, safetyshoes, earplugs or other such safety equipment. Technologies used tocreate the scanned virtual safety shield 806 can include, but are notlimited to, radio frequency identification (RFID), wireless networking,near field (e.g. Bluetooth or another near field technology), cellular,GPS-based tracking (e.g., satellite GPS or local in-plant GPS),time-of-flight or another optical depth measurement technology, inertiameasurement (e.g., an inertia measurement unit), a red-green-blue (RGB)camera, stereoscope cameras, radio detection and ranging (RADAR), lightdetection and ranging (LIDAR), or other such technologies.

In some embodiments, the AR/MR/VR presentation system 302, wearableappliance 206, or area scanner 810 can generate multi-level warnings,such that the urgency of the warning increases as the person 804 movescloser to the safety zone 802 after initial overlap between the virtualsafety shield 806 and the safety zone 802. For example, the initialwarning may be a low audible warning, which escalates to a louderwarning as the user continues moving toward the safety zone 802. Higherwarning levels may add combinations of both audio and visual warnings(e.g., lights) if the person 804 continues moving toward the safety zone802. The level of warning presented may be a function of the hazardousmachine's depth of intrusion into the virtual safety shield or scannedarea 806.

The virtual safety shield approach can also be used to delivernotifications of potential collisions with other types of obstructions,including but not limited to floor-level tripping hazards (e.g., cables,toolboxes, etc.), head-level obstructions (e.g., low ceilings, girders,conduit, plumbing, etc.), or walls. Detection of such obstructions canbe performed entirely locally by the wearable appliance 206 or by thearea scanner 810 carried by the person 806. FIG. 10 is a diagramillustrating detection and notification of an obstacle 1002 using localscanning techniques. In some embodiments, the local camera or scanner414 of wearable appliance 206, or an equivalent component of areascanner 810, can be configured to continuously scan the person's localenvironment using room mapping, spatial mapping, or environmentalmapping techniques, and dynamically generate mapping data 1004representing detected surfaces in proximity of the person 806. Invarious embodiments, this scanning can be performed using any of thescanning technologies described above (e.g., RFID, time-of-flight,wireless networking, near field, etc.).

The mapping data 1004 represents a three-dimensional topology of thesurfaces and objects within a scanning range of the person 804. Localcamera or scanning component 414 (if the wearable appliance 206 is used)or area scanner 810 can continuously update this mapping data 1004 asthe user moves through the plant environment, and local safety shieldcomponent 412 can correlate this dynamically generated mapping data 1004with the user's local virtual safety shield, as defined by the user'spose and trajectory, to determine whether there is a risk that the userwill hazardously interact with a detected surface or obstruction (e.g.,obstruction 1002). For example, the local safety shield component 412may determine, based on analysis of the mapping data 1004, that ahead-level or foot-level obstruction (e.g., a girder, a length ofconduit, cabling, etc.) or another type of obstacle (e.g., a wall, abarrel, etc.) is near the wearer and that the wearer's currenttrajectory and speed puts the wearer at risk of a collision with thedetected obstacle. This determination can be based in part on thecoordinates of the detected obstruction 1002 (generated as part ofmapping data 1004) relative to the coordinates of the user's currentlocation and trajectory. In response to determining that the user'scurrent location and trajectory relative to a detected obstruction 1002represented by the mapping data 1004 places the user at risk ofcollision with the obstruction 1002, the visualization component 408 oranother notification component can generate an audible, visual, oraudio-visual notification 1006 that warns the wearer of the impendingcollision. This approach can mitigate risk of a user tripping overfoot-level obstructions or bumping his or her head against a head-levelobstruction, or colliding with a wall, safety fence, or otherobstruction.

If the wearer is currently viewing an augmented or mixed realitypresentation of his or her surroundings, this collision notification1006 may be rendered as a graphical indication overlaid on the user'sfield of view on or near the source of the potential collision hazard.The notification 1006 may also take the form of an audible warning. Thisimplementation may be particularly useful in assisting wearers withvisual impairments to avoid hazardous collisions.

In a variation of these embodiments, local safety shield component 412(or an equivalent component in the area scanner 810) can be configuredto perform object recognition analysis on the mapping data 1004 toidentify the type of object or machine the wearer is at risk ofcolliding with. In such embodiments, the notification 1006 generated bythe wearable appliance 206 or area scanner 810 can be customized basedon the type of obstacle; e.g., by generating a notification 1006 thatidentifies the obstruction 1002.

As illustrated in FIG. 11, if the detected obstacle is a machine 808 orautomation system controlled by an industrial controller 1104 or anothertype of industrial control device, the wearable appliance 206 or areascanner 810 can generate and send a control output 1102 directed to themachine's controller 1104 that places the machine in a safe state (e.g.,a stopped mode or a slow operating mode). The control output 1102 can besent, for example, by the device communication component 406, which cancommunicatively interface with the controller 1104 via a wirelessnetwork or near field communication, or via a central server thatreceives the control output 1102 from the device communication component406 and, in response, sends an appropriate command to the controller1104 to place the machine in a safe state.

In some embodiments, the identity of the controller 1104 to which thecontrol output is directed 1102 can be determined based on recognitionof the machine 808. For example, the wearable appliance 206 or areascanner 810 can determine an identity of a machine 808 within range ofthe scan based on analysis of the mapping data 1104. In some suchembodiments, the local safety shield component 412 may be trained toidentify one or more distinguishing characteristics of the machine 808based on shape or contour of the machine 808 as defined by the mappingdata 1004. In other embodiments, the wearable appliance 206 or scanner810 can be configured to translate a scannable code (e.g., a QR code) oranother recognizable marker attached to or otherwise associated with themachine, which uniquely identifies the machine. In still otherembodiments, the wearable appliance 206 or scanner 810 can identify themachine based on contextual data obtained from the mapping data 1104(e.g., location context). Once the machine 808 has been identified, thelocal safety shield component 412 can reference stored controlleridentification data that cross-references identities of known machineswithin the plant with the identities of their corresponding industrialcontrollers. In this way, the local safety shield component 412 candetermine the identity of the controller 1104 corresponding to themachine 808 represented by the mapping data 1004. The controlleridentification data may also define communication parameters for thecontroller 1104 (e.g., network addresses, security information,identities of data tags to be written to in order to place the machine808 in a safe state, etc.) that can be used by the device communicationcomponent 406 to establish communication with the controller 1104 andplace the machine 808 in a safe state.

In some embodiments, the control action initiated by the wearableappliance 206 or the area scanner 810 in response to detecting apotential interaction between the user and a machine 808 may be afunction of the user's role. In such embodiments, the wearable appliance209 or area scanner 810 can store identity and/or role information forthe associated user, and select a safety action based on this identityand/or role information. For example, if the role information indicatesthat the user has a maintenance or engineering role, the wearableappliance 206 or area scanner 810 may set the control output 1102 toplace the machine 808 in a slow operation mode rather than stopping themachine completely. Alternatively, if the role information indicatesthat the user has an operator role, the wearable appliance 206 or areascanner 810 may set the control output 1102 to place the machine in astopped mode or to disconnect power from the machine 808.

Notifications (safety shield notifications 612 or notificationsdelivered by the area scanner 810) can be delivered to the person 804via any suitable notification format, including but not limited toillumination of a warning light on the person's personal device(wearable appliance 206 or another personal device carried by the user),emission of an audio warning from the person's personal device, forcefeedback generated by the person's personal device, a vibration-basednotification issued by the person's personal device, a graphicalindication rendered as part of an augmented reality or mixed realitypresentation, or other such feedback. In some implementations, thesafety shield notification 612 may also be sent to a warning devicemounted near the safety zone 802, such as a stack light, a siren, oranother such warning device.

Although the examples described above assume local area scanners 810that are worn by or otherwise carried by a person 804, in someembodiments the area scanner 810 may be mounted on a vehicle that movesthroughout the plant, such as a forklift or truck. In such embodiments,the system can be used to warn drivers when a risk of collision with anobstruction, machine, or person is detected based on analysis of themapping data 1004.

FIG. 8B is a diagram illustrating another implementation for preventingnuisance trips of an industrial safety system caused by a person 804entering a safety zone 802. In this alternative implementation, an areascanner 814 is installed within the safety zone 802 rather than beingcarried by the person 804, thereby creating a scanned area 816 aroundthe safety zone 802 itself. Area scanner 814 is calibrated such that thescanned area 816 is large enough to detect the presence of person 804before any of the machine's safety input devices are tripped. If theperson 804 enters the scanned area 816 created by the area scanner 814,the area scanner 814 or an associated notification system can issue awarning to a suitable device (e.g., an audio or visual warning issuedfrom a device mounted near the safety zone 802; an audio, visual,vibration-based, or force-based warning issued to a client devicecarried by the person 804; a notification issued to the wearableappliance 206, etc.). As in the example described above in connectionwith FIG. 8A, this notification can encourage the person 804 to deviatehis or her path to avoid the safety zone 802. If the person 804continues his or her current trajectory and enters the safety zone 802,the zone's safety input devices will detect the person 804 and place theprotected equipment in its safe state.

As noted above, time of flight scanners can be used for the areascanners described above in some embodiments. As an alternative to areascanners, a beacon can be installed in or near the safety zone 802 thatbroadcasts a scanning beam that defines the scanned area 816. The beaconmay be an active or passive scanner, and can scan the area surroundingthe safety zone 802 using any suitable technology, including but notlimited to RFID, wireless, Bluetooth, time of flight, or cellulartechnologies. The beacon may also be part of satellite-based or localGPS system, creating the scanned area 816 based on monitoring of GPScoordinates. The beacon can be either omnidirectional, or may create afocused scanned area 816 if only a targeted area is to be monitored.

As in the example implementation depicted in FIG. 8A, the notificationscan be delivered to the person 804 via any suitable notification format,including but not limited to illumination of a warning light mountednear the safety zone 802 or on the person's personal device, emission ofan audio warning from a mounted device or the person's personal device,force feedback generated by the person's personal device, avibration-based notification issued by the person's personal device, orother such feedback. Multi-level warnings can also be issued in someembodiments, such that the urgency of the warning increases as theperson 804 moves closer to the safety zone 802 after entering thescanned area 808.

Because these area scanners or beacons are only intended to reducenuisance trips of the protected equipment, whereas the safety systemitself is responsible for actual operator safety, the scanner-basedwarning systems are not required to be as accurate as the safetysystems, and can therefore be implemented at low cost. For example,whereas an industrial safety system is required to be designed fornearly 100% detection accuracy, the scanner-based warning system can beconsiderably less accurate while still providing benefit in terms ofmitigated nuisance trips (e.g., a warning system that is only 90%accurate will still reduce a considerably number of nuisance trips). Insome embodiments however, the scanner-based or beacon-based warningsystems can be designed to provide high-integrity functional safety(e.g., SIL-3) in addition to delivering warning notifications.

The virtual safety shield-based, scanner-based, or beacon-basednotification systems described above can also be used to alert personnelwhen they are approaching arc flash zones, hazardous chemicals,intrinsic safety zones, or other hazardous areas or equipment. In someembodiments, the type of warnings that are issued can be based on arole, employment status, or training status of the person 804, sinceaccess to an area may be a function of these criteria. Also, in someembodiments, system 302 can issue warnings to other personnel inaddition to the person 804 entering the safety zone 802. For example,the system 302 may send notifications to security personnel, a plantmanager, or a threat response team that a person 804 with an improperuser or role identifier, as determined based on user identification data602, is detected near the safety zone 802. The system 302 can also logwarnings and intrusions in memory 322 for the purposes of maintainingplant records for plant certification.

In some implementations, the virtual safety shield 806 defined andmonitored by system 302 can be used to provide safety notifications andinitiate safety countermeasures in cases where hazardous machinery isnot otherwise protected by safety zones 802 and associated safetysystems. This can include identifying when the person is at risk ofinteracting with mobile hazardous equipment, such as a forklift or othervehicle. In an example embodiment, the vehicle may be fitted with atracking device that feeds location data to the AR/MR/VR system 302 viadevice interface component 314. Safety shield component 318 cancontinually compare the vehicle's location information with the currentlocation and dimensions of a person's virtual safety shield 806. Inresponse to determining that the vehicle's location is within the safedistance from the user, as defined by the virtual safety shield 806,device interface component 314 can issue a safety shield notification612 that warns the user of his or her proximity to the vehicle. In someembodiments, device interface component 314 can also send a notificationto a client device associated with a driver of the vehicle warning thedriver of the proximity of the other person. Also, in some embodimentsthe device interface component 314 can issue an interlock signal to thevehicle itself that disables the vehicle in response to determining thatthe vehicle has entered the space defined by a person's virtual safetyshield 806.

In a variation of this mobile vehicle implementation, safety shieldcomponent 318 can be configured to define a virtual safety shield 806around the vehicle itself based on location data received from alocation tracking device mounted on the vehicle. Similar to virtualsafety shields 806 defined for human wearers, a virtual safety shield806 can be defined as being centered around (or otherwise surrounding)the current location of the vehicle-mounted location tracking device andhaving boundaries defined by a minimum safe distance from the vehicle.Safety shield component 318 can continuously update the space defined bythis virtual safety shield based on the current location of the vehicleand compare this monitored space with the tracked locations of people orobstructions within the plant environment (based on location andorientation data 606 received from devices worn by the users, or basedon obstacle location and dimension information recorded in plant models524). In response to determining a current location of a person orobstacle falls within the space defined by vehicle-centric virtualsafety shield, safety shield component 318 can instruct client interfacecomponent 304 to send a notification 612 to a client device associatedwith a driver of the vehicle warning the drive of the proximity of theperson or obstacle.

In some embodiments, safety shield component 318 can be configured todynamically alter the size of the vehicle-centric virtual safety shield806 based on the measured speed of the vehicle to allow for differentreaction distances, which are a function of speed. For example, if thevehicle's speed is within a range defined as a slow speed, safety shieldcomponent 318 can set the safe distance of the virtual safety shield 806to be a first distance. If the vehicle's speed is determined to increaseto a range defined as a high speed, safety shield component 318 canincrease the safe distance of the virtual safety shield 806, therebyincreasing the volume of the virtual safety shield 806. In this way,when the vehicle is traveling at faster speeds, safety shieldnotifications 612 are delivered to the driver when pedestrians orobstacles are at a farther distance from the vehicle, thereby allowingfor longer reaction distances associated with faster speeds. Thisvirtual safety shield approach can also be used to warn a driver if thevehicle is on course to improperly pass a stop sign within the plant,based on correlation of the location of the stop sign (as determinedfrom the plant models) and the vehicle-centric virtual safety shield806.

It is to be appreciated that the various techniques described herein foridentifying when a person is at risk of interacting with a hazardousobject, machine, vehicle, or safety zone and delivering suitablenotifications can be implemented separately in some embodiments, or maybe implemented together within the same detection and notificationsystem. For example, some embodiments may detect a risk that a person isabout to interface with a hazardous entity or safety zone based on thevirtual safety shield implemented by an AR/MR/VR system without the useof an area scanner or beacon, while other embodiments may detect thisrisk based on an area scanner (either mounted at the safety zone,carried by the person, or both) independently of an AR/MR/VR system or avirtual safety shield. Still other embodiments may leverage acombination of both a virtual safety shield generated by an AR/MR/VRsystem 302 as well as one or both of a fixed area scanner or a mobilearea scanner carried by the person. In general, any combination orpermutation of the techniques described herein are within the scope ofone or more embodiments of this disclosure. Also, although the virtualsafety shield approach has been described herein in connection with anAR/MR/VR system, the safety monitoring and notification techniquesdescribed herein can be provided to a user regardless of whetherAR/MR/VR content is being delivered to the wearable appliance 206.

FIGS. 12-16 various methodologies in accordance with one or moreembodiments of the subject application. While, for purposes ofsimplicity of explanation, the one or more methodologies shown hereinare shown and described as a series of acts, it is to be understood andappreciated that the subject innovation is not limited by the order ofacts, as some acts may, in accordance therewith, occur in a differentorder and/or concurrently with other acts from that shown and describedherein. For example, those skilled in the art will understand andappreciate that a methodology could alternatively be represented as aseries of interrelated states or events, such as in a state diagram.Moreover, not all illustrated acts may be required to implement amethodology in accordance with the innovation. Furthermore, interactiondiagram(s) may represent methodologies, or methods, in accordance withthe subject disclosure when disparate entities enact disparate portionsof the methodologies. Further yet, two or more of the disclosed examplemethods can be implemented in combination with each other, to accomplishone or more features or advantages described herein.

FIG. 12 is an example methodology 1200 for delivering warningnotifications to a user at risk of tripping a safety system of anindustrial safety zone. Initially, at 1202, location data identifying alocation of a person within an industrial facility is received. Invarious embodiments, this location data may be received from a wearablevirtual reality, augmented reality, or mixed reality appliance worn bythe user or another type of location tracking device carried by theperson. At 1204, a virtual safety shield is defined as athree-dimensional space surrounding the person with boundaries set by adefined safe distance from the person. In some embodiments, the safedistance may be equal in all directions from the person, resulting in aspherical virtual safety shield, or may vary depending on the directionfrom the user, resulting in an irregularly shaped virtual safety shieldor a shield having another geometric shape. In some embodiments, thevirtual safety shield can be defined and tracked by an AR/MR/VRpresentation system, leveraging user location and equipment modeling andmapping information managed by the presentation system for the purposesof generating and delivering AR/MR/VR presentations.

At 1206, spatial coordinates of the virtual safety shield are comparedwith plant model data defining locations and dimensions of safety zoneswithin the industrial facility. The safety zones may be defined spaceswithin which hazardous industrial equipment operates, and may beprotected by industrial safety systems that each comprise a safetycontroller and associated safety input devices.

At 1208, a determination is made, based on the comparison performed atstep 1206, as to whether an intersection between the virtual safetyshield and a safety zone boundary occurs. If no such intersection occurs(NO at step 1208), the methodology returns to step 1202, and steps1202-1208 repeat. Steps 1202-1208 can repeat continuously such that thelocation of the virtual safety shield within the plant tracks with thelocation of the person as determined by the location data received atstep 1202. During this time, the virtual safety shield is continuallycompared with the defined locations of known safety zones within theplant to determine if an intersection occurs.

If an intersection between the virtual safety shield and the safety zoneboundary occurs (YES at step 1208), the methodology proceeds to step1210, where a notification is sent to a client device or wearableappliance carried by the person. The notification can indicate to theperson that he or she is at risk of inadvertently tripping a safetyinput device associated with the safety zone, affording the person anopportunity to change his or her present trajectory to avoid the safetyzone.

FIG. 13 is an example methodology 1300 for placing industrial machineryin a safe operating mode in response to a detected proximity of aperson. Initially, at 1302, location data identifying a location of aperson within an industrial facility is received (similar to step 1202of methodology 1200). At 1304, a virtual safety shield is defined as athree-dimensional space surrounding the person with boundaries set by adefined safe distance from the person (similar to step 1204 ofmethodology 1200).

At 1306, spatial coordinates of the virtual safety shield are comparedwith plant model data defining locations and dimensions of hazardousmachines within the industrial facility. At 1308, a determination ismade, based on the comparison performed at step 1306, as to whether anintersection between the virtual safety shield and a hazardous machinehas occurred. If no such intersection occurs (NO at step 1308), themethodology returns to step 1302, and steps 1302-1308 repeat. If anintersection occurs (YES at step 1308), the methodology proceeds to step1310, where a control signal is sent to an industrial device thatcontrols the hazardous machine, the control signal placing the hazardousmachine in a safe operating mode. In some embodiments, the virtualsafety shield may be multi-layered or tiered, such that the type ofcontrol signal sent to the industrial device depends on how close theperson is to the hazardous machine. For example, if the hazardousmachine only intrudes as far as an outer layer of the virtual safetyshield (e.g., between distance dl and d2 in the example depicted in FIG.9), the control signal may place the hazardous machine in a slowoperating mode (or another first-level safe mode), whereas if thehazardous machine intrudes as far as an inner layer of the virtualsafety shield (e.g., less than distance d2 in FIG. 9), the controlsignal may place the hazardous machine in a stopped mode (or anothersecond-level safe mode, such as disconnecting power from the hazardousmachine).

FIG. 14 is an example methodology 1400 for dynamically adjusting a sizeof a virtual safety shield. In some embodiments, methodology 1400 can beexecuted as part of steps 1204 or 1304 of methodologies 1200 or 1300,respectively. Initially, at step 1402, location data identifying alocation of a person within an industrial facility is received. At 1404,a current speed of the person is determined based on a rate of change ofthe location data.

At 1406, a determination is made as to whether the current speeddetermined at step 1404 exceeds a threshold speed. If the current speeddoes not exceed the threshold speed (NO at step 1406), the methodologyproceeds to step 1408, where a virtual safety shield is defined as athree-dimensional space surrounding the person with boundaries definedby a first safe distance from a person. Alternatively, if the currentspeed exceeds the threshold speed (YES at step 1406), the methodologyproceeds to step 1410, where the virtual safety shield is defined suchthat the boundaries are defined by a second safe distance from theperson, the second safe distance being greater than the first safedistance.

After either step 1408 or step 1410, the methodology can return to step1202 and repeat, so that the size of the virtual safety shield iscontinuously updated as a function of the wearer's current speed.

FIG. 15 is an example methodology 1500 for dynamically warning a user ofpotential collisions with objects or surfaces. Initially, at 1502, aspace around a person or vehicle is scanned using an areas cannercarried by the person or vehicle. The area scanner may be a devicecarried or worn by a person, or may be integrated into an AR/VR/MRwearable appliance. Scanning technologies that can be used to scene thespace around the person or vehicle can include, but are not limited to,radio frequency identification (RFID), wireless networking, near field(e.g. Bluetooth or another near field technology), cellular, GPS-basedtracking (e.g., satellite GPS or local in-plant GPS), or other suchtechnologies.

At 1504, mapping data is generated based on the scanning performed atstep 1502. The mapping data represents surfaces and objects within arange of the scanning. At 1506, a virtual safety shield is definedaround the person or vehicle based on a minimum safe distance from theperson or vehicle. The virtual safety shield is defined as athree-dimensional volume around the person or vehicle having boundariesset by the minimum safe distance. In some embodiments, the virtualsafety shield can also be defined based on one or more of a pose of theperson or vehicle, a trajectory of the person or vehicle, or a velocityof the person or vehicle. For example, the size of the virtual safetyshield may be set based on a current velocity of the person or vehiclesuch that the virtual safety shield increases in size at highervelocities and decreases in size at lower velocities.

At 1508, a determination is made as to whether virtual safety shieldoverlaps with a surface or object represented by the mapping datagenerated at step 1504. If the virtual safety shield does not overlapwith an object or surface (NO at step 1510), the methodology returns tostep 1502 and steps 1502-1510 repeat. If the virtual safety shieldoverlaps with an object or surface (YES at step 1510), the methodologyproceeds to step 1512, where a notification is generated that warns ofthe possible collision. The notification may be an audio, visual, ortactile notification delivered via the area scanner or via a separatenotification device.

FIG. 16 is an example methodology 1600 for preventing hazardousinteractions with industrial machinery. Initially, at 1602, a spacearound a person or vehicle is scanned using an area scanner carried by aperson or vehicle (similar to step 1502 of methodology 1500). At 1604,mapping data is generated based on the scanning performed at step 1602(similar to step 1504 of methodology 1500).

At 1606, object recognition analysis is performed on the mapping datagenerated at step 1604. At 1608, a determination is made as to whetherthe object recognition analysis recognizes the presence of a hazardousmachine represented by a portion of the mapping data. In variousembodiments, the hazardous machine can be recognized and identified byshape analysis, or by reading a scannable identification code (e.g., aQR code) or other type of readable code affixed to or associated withthe machine. If no hazardous machine is recognized, the methodologyreturns to step 1602, and steps 1602-1608 are repeated. If a hazardousmachine is recognized (YES at step 1608), the methodology proceeds tostep 1610, where a distance of the hazardous machine relative to theperson is determined based on analysis of the mapping data.

At 1612, a determination is made as to whether the distance determinedat step 1610 is less than a defined safe distance. If the distance isnot less than the defined safe distance (NO at step 1612), themethodology returns to step 1602. If the distance is less than the safedistance (YES at step 1612), the methodology proceeds to step 1614,where a control signal is sent to a controller associated with thehazardous machine that places the hazardous machine in a safe state. Insome embodiments, the area scanner can be configured to identify thehazardous machine based on distinguishing characteristics of the machineascertained from the mapping data. Once the machine has been identified,the area scanner can reference information that cross-references eachmachine or automation system in a plant facility with the identity ofits corresponding industrial controller in order to determine thecorrect controller to which the control signal is to be sent. Based onthis controller identity information, the area scanner can direct thecontrol signal to the controller via a near field connection, via aserver that relays the control command to the controller, or via anothercommunication means.

Embodiments, systems, and components described herein, as well asindustrial control systems and industrial automation environments inwhich various aspects set forth in the subject specification can becarried out, can include computer or network components such as servers,clients, programmable logic controllers (PLCs), automation controllers,communications modules, mobile computers, wireless components, controlcomponents and so forth which are capable of interacting across anetwork. Computers and servers include one or more processors—electronicintegrated circuits that perform logic operations employing electricsignals—configured to execute instructions stored in media such asrandom access memory (RAM), read only memory (ROM), a hard drives, aswell as removable memory devices, which can include memory sticks,memory cards, flash drives, external hard drives, and so on.

Similarly, the term PLC or automation controller as used herein caninclude functionality that can be shared across multiple components,systems, and/or networks. As an example, one or more PLCs or automationcontrollers can communicate and cooperate with various network devicesacross the network. This can include substantially any type of control,communications module, computer, Input/Output (I/O) device, sensor,actuator, instrumentation, and human machine interface (HMI) thatcommunicate via the network, which includes control, automation, and/orpublic networks. The PLC or automation controller can also communicateto and control various other devices such as standard or safety-ratedI/O modules including analog, digital, programmed/intelligent I/Omodules, other programmable controllers, communications modules,sensors, actuators, output devices, and the like.

The network can include public networks such as the internet, intranets,and automation networks such as control and information protocol (CIP)networks including DeviceNet, ControlNet, and Ethernet/IP. Othernetworks include Ethernet, DH/DH+, Remote I/O, Fieldbus, Modbus,Profibus, CAN, wireless networks, serial protocols, near fieldcommunication (NFC), Bluetooth, and so forth. In addition, the networkdevices can include various possibilities (hardware and/or softwarecomponents). These include components such as switches with virtuallocal area network (VLAN) capability, LANs, WANs, proxies, gateways,routers, firewalls, virtual private network (VPN) devices, servers,clients, computers, configuration tools, monitoring tools, and/or otherdevices.

In order to provide a context for the various aspects of the disclosedsubject matter, FIGS. 17 and 18 as well as the following discussion areintended to provide a brief, general description of a suitableenvironment in which the various aspects of the disclosed subject mattermay be implemented.

With reference to FIG. 17, an example environment 1710 for implementingvarious aspects of the aforementioned subject matter includes a computer1712. The computer 1712 includes a processing unit 1714, a system memory1716, and a system bus 1718. The system bus 1718 couples systemcomponents including, but not limited to, the system memory 1716 to theprocessing unit 1714. The processing unit 1714 can be any of variousavailable processors. Multi-core microprocessors and othermultiprocessor architectures also can be employed as the processing unit1714.

The system bus 1718 can be any of several types of bus structure(s)including the memory bus or memory controller, a peripheral bus orexternal bus, and/or a local bus using any variety of available busarchitectures including, but not limited to, 8-bit bus, IndustrialStandard Architecture (ISA), Micro-Channel Architecture (MSA), ExtendedISA (EISA), Intelligent Drive Electronics (IDE), VESA Local Bus (VLB),Peripheral Component Interconnect (PCI), Universal Serial Bus (USB),Advanced Graphics Port (AGP), Personal Computer Memory CardInternational Association bus (PCMCIA), and Small Computer SystemsInterface (SCSI).

The system memory 1716 includes volatile memory 1720 and nonvolatilememory 1722. The basic input/output system (BIOS), containing the basicroutines to transfer information between elements within the computer1712, such as during start-up, is stored in nonvolatile memory 1722. Byway of illustration, and not limitation, nonvolatile memory 1722 caninclude read only memory (ROM), programmable ROM (PROM), electricallyprogrammable ROM (EPROM), electrically erasable PROM (EEPROM), or flashmemory. Volatile memory 1720 includes random access memory (RAM), whichacts as external cache memory. By way of illustration and notlimitation, RAM is available in many forms such as synchronous RAM(SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rateSDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), Synchlink DRAM (SLDRAM), anddirect Rambus RAM (DRRAM).

Computer 1712 also includes removable/non-removable,volatile/non-volatile computer storage media. FIG. 17 illustrates, forexample a disk storage 1724. Disk storage 1724 includes, but is notlimited to, devices like a magnetic disk drive, floppy disk drive, tapedrive, Jaz drive, Zip drive, LS-100 drive, flash memory card, or memorystick. In addition, disk storage 1724 can include storage mediaseparately or in combination with other storage media including, but notlimited to, an optical disk drive such as a compact disk ROM device(CD-ROM), CD recordable drive (CD-R Drive), CD rewritable drive (CD-RWDrive) or a digital versatile disk ROM drive (DVD-ROM). To facilitateconnection of the disk storage 1724 to the system bus 1718, a removableor non-removable interface is typically used such as interface 1726.

It is to be appreciated that FIG. 17 describes software that acts as anintermediary between users and the basic computer resources described insuitable operating environment 1710. Such software includes an operatingsystem 1728. Operating system 1728, which can be stored on disk storage1724, acts to control and allocate resources of the computer 1712.System applications 1730 take advantage of the management of resourcesby operating system 1728 through program modules 1732 and program data1734 stored either in system memory 1716 or on disk storage 1724. It isto be appreciated that one or more embodiments of the subject disclosurecan be implemented with various operating systems or combinations ofoperating systems.

A user enters commands or information into the computer 1712 throughinput device(s) 1736. Input devices 1736 include, but are not limitedto, a pointing device such as a mouse, trackball, stylus, touch pad,keyboard, microphone, joystick, game pad, satellite dish, scanner, TVtuner card, digital camera, digital video camera, web camera, and thelike. These and other input devices connect to the processing unit 1714through the system bus 1718 via interface port(s) 1738. Interfaceport(s) 1738 include, for example, a serial port, a parallel port, agame port, and a universal serial bus (USB). Output device(s) 1740 usesome of the same type of ports as input device(s) 1736. Thus, forexample, a USB port may be used to provide input to computer 1712, andto output information from computer 1712 to an output device 1740.Output adapters 1742 are provided to illustrate that there are someoutput devices 1740 like monitors, speakers, and printers, among otheroutput devices 1740, which require special adapters. The output adapters1742 include, by way of illustration and not limitation, video and soundcards that provide a means of connection between the output device 1740and the system bus 1718. It should be noted that other devices and/orsystems of devices provide both input and output capabilities such asremote computer(s) 1744.

Computer 1712 can operate in a networked environment using logicalconnections to one or more remote computers, such as remote computer(s)1744. The remote computer(s) 1744 can be a personal computer, a server,a router, a network PC, a workstation, a microprocessor based appliance,a peer device or other common network node and the like, and typicallyincludes many or all of the elements described relative to computer1712. For purposes of brevity, only a memory storage device 1746 isillustrated with remote computer(s) 1744. Remote computer(s) 1744 islogically connected to computer 1712 through a network interface 1748and then physically connected via communication connection 1750. Networkinterface 1748 encompasses communication networks such as local-areanetworks (LAN) and wide-area networks (WAN). LAN technologies includeFiber Distributed Data Interface (FDDI), Copper Distributed DataInterface (CDDI), Ethernet/IEEE 802.3, Token Ring/IEEE 802.5 and thelike. WAN technologies include, but are not limited to, point-to-pointlinks, circuit switching networks like Integrated Services DigitalNetworks (ISDN) and variations thereon, packet switching networks, andDigital Subscriber Lines (DSL). Network interface 1748 can alsoencompass near field communication (NFC) or Bluetooth communication.

Communication connection(s) 1750 refers to the hardware/softwareemployed to connect the network interface 1748 to the system bus 1718.While communication connection 1750 is shown for illustrative clarityinside computer 1712, it can also be external to computer 1712. Thehardware/software necessary for connection to the network interface 1748includes, for exemplary purposes only, internal and externaltechnologies such as, modems including regular telephone grade modems,cable modems and DSL modems, ISDN adapters, and Ethernet cards.

FIG. 18 is a schematic block diagram of a sample computing environment1800 with which the disclosed subject matter can interact. The samplecomputing environment 1800 includes one or more client(s) 1802. Theclient(s) 1802 can be hardware and/or software (e.g., threads,processes, computing devices). The sample computing environment 1800also includes one or more server(s) 1804. The server(s) 1804 can also behardware and/or software (e.g., threads, processes, computing devices).The servers 1804 can house threads to perform transformations byemploying one or more embodiments as described herein, for example. Onepossible communication between a client 1802 and servers 1804 can be inthe form of a data packet adapted to be transmitted between two or morecomputer processes. The sample computing environment 1800 includes acommunication framework 1806 that can be employed to facilitatecommunications between the client(s) 1802 and the server(s) 1804. Theclient(s) 1802 are operably connected to one or more client datastore(s) 1808 that can be employed to store information local to theclient(s) 1802. Similarly, the server(s) 1804 are operably connected toone or more server data store(s) 1810 that can be employed to storeinformation local to the servers 1804.

What has been described above includes examples of the subjectinnovation. It is, of course, not possible to describe every conceivablecombination of components or methodologies for purposes of describingthe disclosed subject matter, but one of ordinary skill in the art mayrecognize that many further combinations and permutations of the subjectinnovation are possible. Accordingly, the disclosed subject matter isintended to embrace all such alterations, modifications, and variationsthat fall within the spirit and scope of the appended claims.

In particular and in regard to the various functions performed by theabove described components, devices, circuits, systems and the like, theterms (including a reference to a “means”) used to describe suchcomponents are intended to correspond, unless otherwise indicated, toany component which performs the specified function of the describedcomponent (e.g., a functional equivalent), even though not structurallyequivalent to the disclosed structure, which performs the function inthe herein illustrated exemplary aspects of the disclosed subjectmatter. In this regard, it will also be recognized that the disclosedsubject matter includes a system as well as a computer-readable mediumhaving computer-executable instructions for performing the acts and/orevents of the various methods of the disclosed subject matter.

In addition, while a particular feature of the disclosed subject mattermay have been disclosed with respect to only one of severalimplementations, such feature may be combined with one or more otherfeatures of the other implementations as may be desired and advantageousfor any given or particular application. Furthermore, to the extent thatthe terms “includes,” and “including” and variants thereof are used ineither the detailed description or the claims, these terms are intendedto be inclusive in a manner similar to the term “comprising.”

In this application, the word “exemplary” is used to mean serving as anexample, instance, or illustration. Any aspect or design describedherein as “exemplary” is not necessarily to be construed as preferred oradvantageous over other aspects or designs. Rather, use of the wordexemplary is intended to present concepts in a concrete fashion.

Various aspects or features described herein may be implemented as amethod, apparatus, or article of manufacture using standard programmingand/or engineering techniques. The term “article of manufacture” as usedherein is intended to encompass a computer program accessible from anycomputer-readable device, carrier, or media. For example, computerreadable media can include but are not limited to magnetic storagedevices (e.g., hard disk, floppy disk, magnetic strips . . . ), opticaldisks [e.g., compact disk (CD), digital versatile disk (DVD) . . . ],smart cards, and flash memory devices (e.g., card, stick, key drive . .. ).

What is claimed is:
 1. A system, comprising: a memory that storesexecutable components; and a processor, operatively coupled to thememory, that executes the executable components, the executablecomponents comprising: a local scanner component configured to perform ascan of a vicinity surrounding the system and to generate, based on thescan, mapping data representing objects and surfaces within thevicinity; and a local safety shield component configured to define athree-dimensional virtual safety shield around the local scanner basedon a defined minimum safe distance, identify, based on a result of ananalysis performed on the mapping data, an obstacle within the vicinitysurrounding the system, and in response to determining that the virtualsafety shield overlaps with the obstacle, generate a notification. 2.The system of claim 1, wherein the system is integrated into at leastone of an augmented reality wearable appliance, a hard hat, a bump cap,safety glasses, a safety glove, arc flash protective clothing, safetyshoes, earplugs, a forklift, or a body suit.
 3. The system of claim 1,wherein the obstacle is an industrial machine controlled by anindustrial controller, and the system further comprises a devicecommunication component configured to, in response to determining thatthe virtual safety shield overlaps with the industrial machine, send acontrol signal to the industrial controller that places the industrialmachine in a safe state.
 4. The system of claim 3, wherein the devicecommunication component is configured to generate the control signal inaccordance with a defined role of a user associated with the system. 5.The system of claim 3, wherein the local safety shield component isconfigured to determine an identity of the industrial machine based onat least one of object recognition analysis performed on the mappingdata, a location context, a scannable code associated with theindustrial machine, or a marker associated with the industrial machine,and determine an identity of the industrial controller associated withthe identity of the industrial machine based on controller identity datastored on the memory, and the device communication component isconfigured to send the control signal to the industrial controllercorresponding to the identity of the industrial controller.
 6. Thesystem of claim 1, wherein the notification is at least one of anaugmented reality graphic rendered on a wearable appliance, a visualindication, an audible indication, or a tactile indication.
 7. Thesystem of claim 1, wherein the wherein the local scanner component isconfigured to perform the scan using at least one of radio frequencyidentification, wireless networking, near field communication, cellularcommunication, global positioning system tracking, a depth camera, aninertia measurement unit, a red-green-blue (RGB) camera, stereoscopecameras, radio detection and ranging (RADAR), or light detection andranging (LIDAR).
 8. The system of claim 1, wherein the local safetyshield component is further configured to determine a trajectory awearer of the system, and to generate the notification in response tofurther determining that the trajectory is indicative of a risk ofcollision with the obstacle.
 9. The system of claim 1, wherein the localsafety shield component is further configured to increase a size of thevirtual safety shield in response to a determination that a velocity oran acceleration of a wearer of the system exceeds a defined threshold ora trajectory of the wearer of the system satisfies a defined criterion.10. A method, comprising: scanning, by a system comprising a processor,a space surrounding the system; generating, by the system based on thescanning, mapping data that models objects and surfaces within the spacesurrounding the system; defining, by the system, a three-dimensionalvirtual safety shield around the system based on a defined minimum safedistance; identifying, by the system based on a result of an analysisperformed on the mapping data, an obstacle within the space surroundingthe system; and in response to determining that the virtual safetyshield overlaps with the obstacle, generating, by the system, anotification.
 11. The method of claim 10, wherein the system isintegrated into at least one of an augmented reality wearable appliance,a hard hat, a bump cap, safety glasses, a safety glove, arc flashprotective clothing, safety shoes, earplugs, a forklift, an automatedguided vehicle, or a body suit.
 12. The method of claim 10, wherein theidentifying the obstacle comprises identifying an industrial machinecontrolled by an industrial controller, and the method furthercomprises: in response to determining that the virtual safety shieldoverlaps with the industrial machine, sending, by the system, a controlsignal to the industrial controller, wherein the control signaltransitions the industrial machine to a safe state.
 13. The method ofclaim 12, wherein the sending the control signal comprises generatingthe control signal to set the safe state based on a role of a userassociated with the system.
 14. The method of claim 12, wherein thesending the control signal comprises: determining, by the system, anidentity of the industrial machine based on at least one of objectrecognition analysis performed on the mapping data, a location context,a scannable code associated with the industrial machine, or a markerassociated with the industrial machine; determining an identity of theindustrial controller associated with the industrial machine based on arecorded association between the identity of the industrial machine andthe identity of the industrial controller; and sending the controlsignal to the industrial controller selected based on the identity ofthe industrial controller.
 15. The method of claim 10, wherein thegenerating the notification comprises generating at least one of anaugmented reality graphic rendered on a wearable appliance, a visualindication, an audible indication, or a tactile indication.
 16. Themethod of claim 10, wherein the scanning comprises scanning using atleast one of radio frequency identification, wireless networking, nearfield communication, cellular communication, global positioning systemtracking, a depth camera, an inertia measurement unit, a red-green-blue(RGB) camera, stereoscope cameras, radio detection and ranging (RADAR),or light detection and ranging (LIDAR).
 17. The method of claim 10,further comprising determining, by the system, a trajectory of a wearerof the system, wherein the generating further comprises generating thenotification in response to further determining that the trajectory isindicative of a risk of collision with the obstacle.
 18. The method ofclaim 10, further comprising increasing, by the system, a size of thevirtual safety shield in response to determining that a velocity or anacceleration of a wearer of the system increases in excess of a definedvelocity threshold or a trajectory of the wearer of the system satisfiesa defined criterion.
 19. A non-transitory computer-readable mediumhaving stored thereon instructions that, in response to execution, causea wearable device comprising a processor to perform operations, theoperations comprising: scanning a vicinity surrounding the wearabledevice; generating, based on the scanning, mapping data that describesobjects and surfaces within the vicinity; defining a three-dimensionalvirtual safety shield around the wearable device based on a definedminimum safe distance; identifying, based on a result of an analysisperformed on the mapping data, an obstacle within the space surroundingthe wearable device; and in response to determining that the virtualsafety shield overlaps with the obstacle, generating a notification. 20.The non-transitory computer-readable medium of claim 19, wherein thewearable device at least one of an augmented reality wearable appliance,a hard hat, a bump cap, safety glasses, a safety glove, arc flashprotective clothing, safety shoes, earplugs, or a body suit.